Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

vtk: drop clang 1316 workaround #209097

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open

vtk: drop clang 1316 workaround #209097

wants to merge 1 commit into from

Conversation

cho-m
Copy link
Member

@cho-m cho-m commented Feb 27, 2025

Apple Clang 1316 was used in Xcode 13.3 - 13.4.1 for Monterey. Since macOS 12.5+ can install Xcode 14, the better option for users is to upgrade macOS/Xcode rather than carrying this workaround we can't verify anymore.

@cho-m cho-m added CI-skip-dependents Pass --skip-dependents to brew test-bot. CI-no-bottles Merge without publishing bottles labels Feb 27, 2025
@github-actions github-actions bot added python Python use is a significant feature of the PR or issue long build Set a long timeout for formula testing boost Boost use is a significant feature of the PR or issue labels Feb 27, 2025
Copy link
Member

@carlocab carlocab left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Seems to have linkage to Homebrew expat.

@carlocab carlocab added the automerge-skip `brew pr-automerge` will skip this pull request label Feb 27, 2025
@@ -47,19 +47,6 @@ class Vtk < Formula
uses_from_macos "tcl-tk"
Copy link
Member

@carlocab carlocab Feb 27, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Probably need depends_on "expat" to avoid breaking installs on macOS 15. See also Homebrew/brew#19315

Copy link
Member Author

@cho-m cho-m Feb 27, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is part of the odd situation of dependents of Python now propagating expat. Essentially will end up with dozens of formulae with brew expat linkage unless we handle this differently.

Some alternatives:

Or we just accept expat usage everywhere.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Seems fine to accept it in dependents to me. There's already linkage anyway.

Copy link
Member Author

@cho-m cho-m Feb 27, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The formulae impacted (i.e. those with uses_from_macos "expat" and [email protected] in dependency tree) are:

  1. aarch64-elf-gdb
  2. afflib
  3. arm-none-eabi-gdb
  4. gdb ([email protected] for now due to gdbgui)
  5. gdcm
  6. graph-tool
  7. i386-elf-gdb
  8. opencolorio
  9. riscv64-elf-gdb
  10. votca
  11. vtk
  12. x86_64-elf-gdb

There were originally more before removing [email protected] from glib runtime dependencies.

One thing about current state is there is a higher risk of mixing expat libraries when installing a combination of Sequoia and Sonoma bottles, i.e. formula bottled/built on Sequoia may be linked to system expat but Sonoma bottle was linked to brew expat and then a project that combines these may crash from multiple expat.

Though we don't really care about this for ncurses and libxml2 dependents which has similar concerns.

Copy link
Member Author

@cho-m cho-m Feb 27, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Anyway, the existing vtk bottle is still linked to system expat so we shouldn't modify dependency until new bottle is needed:

brew linkage vtk | grep expat
  /usr/lib/libexpat.1.dylib

Either on next version bump or revision bump like #207100

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
automerge-skip `brew pr-automerge` will skip this pull request boost Boost use is a significant feature of the PR or issue CI-no-bottles Merge without publishing bottles CI-skip-dependents Pass --skip-dependents to brew test-bot. long build Set a long timeout for formula testing python Python use is a significant feature of the PR or issue
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants